package com.JobWebGem.system.service.impl;

import com.JobWebGem.system.mapper.TypeMapper;
import com.JobWebGem.system.model.entity.Type;
import com.JobWebGem.system.service.TypeService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.io.Serializable;
import java.util.List;

/**
 * 岗位类别服务实现类
 *
 * @author renli
 */
@Service
public class TypeServiceImpl extends ServiceImpl<TypeMapper, Type>
        implements TypeService {

    @Resource
    private TypeMapper typeMapper;

    @Override
    public Type getById(Serializable id) {
        // 直接使用 baseMapper 查询，这是 MyBatis-Plus 推荐的方式
        return baseMapper.selectById(id);
    }

    /**
     * 获取所有岗位类别
     * 不添加 isDelete 条件，确保能查询到所有类型记录
     * 
     * @return 岗位类别列表
     */
    @Override
    public List<Type> listAllTypes() {
        // 创建查询条件，按照 id 升序排序
        QueryWrapper<Type> queryWrapper = new QueryWrapper<>();
        // 不添加 isDelete 条件，确保能查到所有记录
        queryWrapper.orderByAsc("id");
        // 执行查询
        List<Type> typeList = baseMapper.selectList(queryWrapper);
        return typeList;
    }
}
